package com.whnk.attendance.service;

import com.whnk.attendance.vo.PmProListVo;
import com.whnk.attendance.vo.PmProQueryVo;
import com.whnk.attendance.vo.PmProUpdateVo;
import com.whnk.common.core.web.page.TableDataInfo;

import java.util.List;

/**
 * 项目级别列Service接口
 *
 * @author whnk
 * @date 2021-11-17
 */
public interface IPmProLevelService
{
    /**
     * 查询项目级别列
     *
     * @param proId 项目级别列主键
     * @return 项目级别列
     */
    public PmProListVo selectPmProLevelByProId(Long proId);

    /**
     * 查询项目级别列列表
     *
     * @param pmProQueryVo 项目级别列
     * @return 项目级别列集合
     */
    public List<PmProListVo> selectPmProLevelList(PmProQueryVo pmProQueryVo);

    public TableDataInfo selectPmProLevelListTable(PmProQueryVo pmProQueryVo);

    /**
     * 新增项目级别列
     *
     * @param pmProUpdateVo 项目级别列
     * @return 结果
     */
    public int insertPmProLevel(PmProUpdateVo pmProUpdateVo);

    /**
     * 修改项目级别列
     *
     * @param pmProUpdateVo 项目级别列
     * @return 结果
     */
    public int updatePmProLevel(PmProUpdateVo pmProUpdateVo);

    /**
     * 批量删除项目级别列
     *
     * @param proIds 需要删除的项目级别列主键集合
     * @return 结果
     */
    public int deletePmProLevelByProIds(Long[] proIds);

    /**
     * 删除项目级别列信息
     *
     * @param proId 项目级别列主键
     * @return 结果
     */
    public int deletePmProLevelByProId(Long proId);

    /**
     * 导入项目级别信息
     * @param pmProListVos
     */
    String pmProLeverUpload(List<PmProListVo> pmProListVos,boolean updateSupport);
}
